package com.star.security.utils;

import cn.hutool.crypto.digest.DigestUtil;
import cn.hutool.crypto.digest.Digester;

/**
 * 密码编码
 *
 * @author yangzj
 */
public class PasswordEncoders {

    /**
     * 编码
     *
     * @param rawPassword 原始密码
     * @return {@link String}
     */
    public static String encode(String rawPassword) {
        Digester digester = DigestUtil.digester("sm3");
        return digester.digestHex(rawPassword);
    }

    /**
     * 匹配
     *
     * @param rawPassword     原始密码
     * @param encodedPassword 编码密码
     * @return boolean
     */
    public static boolean matches(String rawPassword, String encodedPassword){
        return encode(rawPassword).equals(encodedPassword);
    }
}
